@贝壳儿
2年前 提问
1个回答

恶意代码检测方法有哪些

一颗小胡椒
2年前
官方采纳

恶意代码的检测是指收集并分析网络和计算机系统中若干关键点的信息,发现其中是否存在违反安全策略的行为以及被攻击的痕迹。恶意代码检测的常用方法包括:

特征码扫描

特征码扫描是在恶意代码检测中使用的一种基本技术,广泛应用于各类恶意代码清除软件中。每种恶意代码中都包含某个特定的代码段,即特征码。在进行恶意代码扫描时,扫描引擎会将系统中的文件与特征码进行匹配,如果发现系统中的文件存在与某种恶意代码相同的特征码,就认为存在恶意代码。因此,特征码扫描过程就是病毒特征串匹配的过程。

特征码扫描技术是一种准确性高、易于管理的恶意代码检测技术。但是这种技术也存在一定的问题:一方面随着恶意代码数量的增长,特征库规模不断扩充,扫描效率越来越低;另一方面该技术只能用于已知恶意代码的检测,不能发现新的恶意代码;此外,如果恶意代码采用了加密、混淆、多态变形等自我防护技术,特征码扫描技术也难以检测。

沙箱技术

沙箱技术是将恶意代码放入虚拟机中执行,其执行的所有操作都被虚拟化重定向,不改变实际操作系统。虚拟机通过软件和硬件虚拟化,让程序在一个虚拟的计算环境中运行,这就如同在一个装满细沙的盒子中,允许随便的画画、涂改,这些画出来的图案在沙盒里很容易被抹掉。

沙箱技术能较好地解决变形恶意代码的检测问题。经过加密、混淆或多态变形的恶意代码放入虚拟机后,将自动解码并开始执行恶意操作,由于运行在可控的环境中,通过特征码扫描等方法,可以检测出恶意代码的存在。

行为检测

行为检测技术通过对恶意代码的典型行为特征分析,如频繁连接网络、修改注册表、内存消耗过大等,确定恶意操作行为,对这些典型行为特征和用户合法操作规则进行分析和研究,如果某个程序运行时,检测发现其行为违反了合法程序操作规则,或者符合恶意程序操作规则,则可以判断其为恶意代码。

行为检测技术根据程序的操作行为分析,判断其恶意性,可用于未知病毒的发现。由于目前行为检测技术对用户行为难以全部掌握和分析,因而容易导致较大的误报概率。